package day16.xianchengdemo.chuangjian;

public class demo1
{
    public static void main(String[] args)//main本身是由一条主线程推进执行的。
                       // 主线程在跑，顺便把子线程拉起来了，同时干两个事。两个线程的输出是随机交替的
    {
        Thread td=new MyThread();
        td.start();//给cpu说启动一个新的线程，（调的是start方法）而且调用新线程（实例化的对象）的run方法
        for (int i = 0; i < 10; i++)//主线程的任务一定要放在新线程之后，才会有同时感觉，
             // 要不然放前面比如最前面，那跟普通代码就没什么区别了，先做完主线程的循环，然后又来一个新线程做新线程的循环，

            // 虽然说底层还是两个线程但是，输出来看没有同时多线程的感觉
        {
            System.out.println("主线程的输出："+i);
        }

    }
}
//创建线程的方式一：继承Thread类，重写run方法，调用实例化对象的start方法
class MyThread extends Thread
{
    @Override
    public void run()//线程体，（线程要干的活），必须是void返回
    {
        for (int i = 0; i < 10; i++)
        {
            System.out.println("子线程的输出："+i);
        }
    }
}
